←Select platform

LightControlCommand Constructor(int[],int[],int[],LightControlCommandType)

Summary
Initializes a new LightControlCommand class object with explicit parameters.
Syntax
C#
Objective-C
C++/CLI
Java
Python
- (instancetype)initWithLowerAverage:(nullable NSArray<NSNumber *> *)lowerAverage average:(nullable NSArray<NSNumber *> *)average upperAverage:(nullable NSArray<NSNumber *> *)upperAverage type:(LTLightControlCommandType)type NS_DESIGNATED_INITIALIZER; 
public LightControlCommand( 
   int[] lowerAverage, 
   int[] average, 
   int[] upperAverage, 
   LightControlCommandType type 
); 
public: 
LightControlCommand(  
   array<int>^ lowerAverage, 
   array<int>^ average, 
   array<int>^ upperAverage, 
   LightControlCommandType type 
) 
__init__(self,lowerAverage,average,upperAverage,type) # Overloaded constructor 

Parameters

lowerAverage
An array that contains the new average pixel value for those pixels with values between 0 and the average pixel value for the entire image. The size of the array equals one, if Type is LightControlCommandType.Yuv or LightControlCommandType.Gray, or three, if Type is LightControlCommandType.Rgb. If Type is LightControlCommandType.Rgb the first element corresponds to the new blue lower average value, the second element to the green, and the last element to the red.

average
An array that contains the new average pixel value for the entire image. The size of the array equals one, if Type is LightControlCommandType.Yuv or LightControlCommandType.Gray, or three, if Type is LightControlCommandType.Rgb. If Type is LightControlCommandType.Rgb the first element corresponds to the new blue average value, the second element to the green, and the last element to the red.

upperAverage
An array that contains the new average pixel value for those pixels with values between the average pixel value for the entire image and the highest pixel value in the image. The size of the array equals either one if Type is LightControlCommandType.Yuv or LightControlCommandType.Gray or three if Type is LightControlCommandType.Rgb where the first element corresponds to the new blue upper side average value, the second element to the green, and the last element to the red.

type
Flag that indicates which color space to remap.

Example
C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Color; 
 
 
public void LightControlCommandExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "dirty_barcode.jpg")); 
 
   // Prepare the command 
   int[] LowerAverage = new int[3]; 
   LowerAverage[0] = 100; //for blue, gray or yuv 
   LowerAverage[1] = 120; //for green 
   LowerAverage[2] = 80; //for red 
 
   int[] Average = new int[3]; 
   Average[0] = 150; //for blue, gray or yuv 
   Average[1] = 140; //for green 
   Average[2] = 128; //for red 
 
   int[] UpperAverage = new int[3]; 
   UpperAverage[0] = 190; //for blue, gray or yuv 
   UpperAverage[1] = 200; //for green 
   UpperAverage[2] = 220; //for red  
 
   LightControlCommand command = new LightControlCommand(); 
   command.LowerAverage = LowerAverage; 
   command.Average = Average; 
   command.UpperAverage = UpperAverage; 
   command.Type = LightControlCommandType.Yuv; 
   // change the lightness of the image. 
   command.Run(image); 
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24); 
 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.io.File; 
import java.io.IOException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.codecs.*; 
import leadtools.imageprocessing.color.*; 
 
 
public void lightControlCommandExample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.setThrowExceptionsOnInvalidImages(true); 
 
   RasterImage image = codecs.load(combine(LEAD_VARS_IMAGES_DIR, "noisy_barcode.jpg")); 
   System.out.println("Image loaded"); 
 
   // Prepare the command 
   int[] lowerAverage = new int[3]; 
   lowerAverage[0] = 100; // for blue, gray or yuv 
   lowerAverage[1] = 120; // for green 
   lowerAverage[2] = 80; // for red 
 
   int[] average = new int[3]; 
   average[0] = 150; // for blue, gray or yuv 
   average[1] = 140; // for green 
   average[2] = 128; // for red 
 
   int[] upperAverage = new int[3]; 
   upperAverage[0] = 190; // for blue, gray or yuv 
   upperAverage[1] = 200; // for green 
   upperAverage[2] = 220; // for red 
   assertTrue(upperAverage[1] == 200); 
 
   LightControlCommand command = new LightControlCommand(); 
   command.setLowerAverage(lowerAverage); 
   command.setAverage(average); 
   command.setUpperAverage(upperAverage); 
   command.setType(LightControlCommandType.YUV); 
   assertTrue(command.getLowerAverage() == lowerAverage && command.getAverage() == average 
         && command.getUpperAverage() == upperAverage); 
   // change the lightness of the image. 
   command.run(image); 
   System.out.println("Executed changes on loaded image..."); 
   codecs.save(image, combine(LEAD_VARS_IMAGES_DIR, "Result.jpg"), RasterImageFormat.JPEG, 24); 
 
   System.out.println("Command run and image saved to " + combine(LEAD_VARS_IMAGES_DIR, "Result.jpg")); 
   assertTrue("Command run and image saved", new File(combine(LEAD_VARS_IMAGES_DIR, "Result.jpg")).exists()); 
 
} 
Requirements

Target Platforms

Help Version 23.0.2024.3.3
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ImageProcessing.Color Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.